package org.mirrentools.attendance.console.service;

import org.mirrentools.attendance.console.service.impl.ReportServiceImpl;

import io.vertx.core.AsyncResult;
import io.vertx.core.Handler;
import io.vertx.core.MultiMap;
import io.vertx.core.json.JsonObject;
import io.vertx.ext.jdbc.JDBCClient;
import io.vertx.ext.sql.assist.SQLExecute;

/**
 * Report数据服务接口
 * 
 * @author 
 *
 */
public interface ReportService {
	/**
	 * 创建一个实例
	 * 
	 * @param execute
	 * @return
	 */
	static ReportService create(SQLExecute<JDBCClient> execute) {
		return new ReportServiceImpl(execute);
	}

	/**
	 * 工作汇报
	 * 
	 * @param params
	 * @param handler
	 */
	void put(MultiMap params, Handler<AsyncResult<JsonObject>> handler);
}
